﻿/***  File Header  ************************************************************/
/**
* @file TxIO.cpp
*
* テキストI/Oクラス
* @author shozo fukuda
* @date   作成 Wed Mar 29 12:33:55 2006
* @date   修正 $Date: 06/04/13 14:22 $
* System  Generic <br>
*
*******************************************************************************/

/*******************************************************************************
* IMPORTS:
*******************************************************************************/
#include <stdarg.h>
#include <stdio.h>
#include "TxIO.h" /* 呼出用 */

/*******************************************************************************
* CONSTANT:
*******************************************************************************/
#define MAX_MSG    240

/*******************************************************************************
* TYPE:
*******************************************************************************/

/*******************************************************************************
* MACRO:
*******************************************************************************/

/*******************************************************************************
* GLOBAL VARIABLE:
*******************************************************************************/

/***  Module Header  ******************************************************}}}*/
/**
* 文字列印字
* @par 解説
*   指定の文字列sを出力先に印字します。
**/
/**************************************************************************{{{*/
void TxIO::PutS(
char* s)
{
  while (*s) {
    PutC(*s++);
  }
}

/***  Module Header  ******************************************************}}}*/
/**
* テキスト印字
* @par 解説
*   書式 fmtに従って引数からテキストを作成し、出力先に印字します。
**/
/**************************************************************************{{{*/
void TxIO::Printf(
char* fmt,          ///< (r) 書式指定
...)                ///< (r) 印字データ
{
  char msg[MAX_MSG];

  va_list args;
  va_start(args, fmt);

  vsprintf(msg, fmt, args);

  va_end(args);

  PutS(msg);  
}

/***  Module Header  ******************************************************}}}*/
/**
* エラーメッセージ印字
* @par 解説
*   書式 fmtに従って引数からメッセージを作成し、出力先に印字します。
**/
/**************************************************************************{{{*/
void TxIO::Error(
char* fmt,          ///< (r) 書式指定
...)                ///< (r) 印字データ
{
  char msg[MAX_MSG];

  va_list args;
  va_start(args, fmt);

  vsprintf(msg, fmt, args);

  va_end(args);

  PutS(msg);  
}

/* end of TxIO.cpp */

